package com.headfirst.dmp.report.tags

import org.apache.commons.lang.StringUtils
import org.apache.spark.sql.Row

/**
  * 处理广告相关的标签
  */
object Tags4ADTag extends TagsTrait {

  /**
    * 打广告标签
    * @param args  传入数据为Row对象
    * @return
    */
  override def makeTags(args: Any*): Map[String, Int] = {

    //将数据转换为Row对象
    val row: Row = args(0).asInstanceOf[Row]

    //创建一个空Map，用于存储数据
    var map = Map[String,Int]()

    //判断对应的字段是否存在,存在则添加到map中
    val adspacetypeId: Int = row.getAs[Int]("adspacetype")
    val adspacetypename: String = row.getAs[String]("adspacetypename")

    if(adspacetypeId>9){
      map += ("LC"+adspacetypeId -> 1)
    }else{
      map += ("LC0"+adspacetypeId ->1)
    }

    if(StringUtils.isNotBlank(adspacetypename)){
      map += ("LN" + adspacetypename -> 1)
    }

    //返回map
    map

  }
}
